package com.zzedu.enmuns;

import java.util.Arrays;

/**
 * 系统配置枚举
 */
public enum ConfigEnums {

    /**
     * 初始密码Key
     */
    SYS_USER_INITPASSWORD("sys.user.initPassword", "初始密码Key"),

    /**
     * 时间阈值差(毫秒)
     */
    DIFF_TIMESTAMP("sys.app.diff.timestamp", "时间阈值差(毫秒)"),


    /**
     * 是否启用验签标识
     */
    SIGN_FLAG("sys.app.sign.flag", "是否启用验签标识"),

    /**
     * 作业分类ICON
     */
    TASK_PICTURE_NODE_ICON("task_picture_node_icon", "作业分类ICON"),

    /**
     * APP版本
     */
    APP_VERSION("sys.version.app", "APP版本"),

    /**
     * 大屏版本
     */
    DEVICE_VERSION("sys.version.device", "大屏版本"),

    /**
     * AI评分参数配置
     */
    AI_SCORE_CONFIG("sys.ai.score.config","AI评分参数配置"),

    /**
     * 导航视频
     */
    SYS_NAVIGATE_VIDEO_URL("sys.navigate.video.url","导航视频"),

    /**
     * 小程序-导航视频
     */
    SYS_MINI_NAVIGATE_VIDEO_URL("sys.mini.navigate.video.url","小程序-导航视频"),

    /**
     * 测试校区ID
     */
    SYS_TEST_SCHOOL_CONFIG("sys.test.school.config.ids", "测试校区ID"),
    ;

    ConfigEnums(String code, String desc) {
        this.code = code;
        this.desc = desc;
    }

    private String code;

    private String desc;

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getDesc() {
        return desc;
    }

    public void setDesc(String desc) {
        this.desc = desc;
    }


    public static ConfigEnums getCode(String code) {

        return Arrays.stream(ConfigEnums.values()).filter(e -> e.getCode().equals(code)).findFirst().orElse(null);
    }

    @Override
    public String toString() {
        return String.valueOf(code); // 或者 name(), 或者 desc
    }
}
